Modern battery-operated devices are powerful and vital tools for both business and personal use. Hosts include wireless communication devices such as cell telephones and computing devices such as portable computers, personal digital assistants (PDAs) and hybrid computer/communication devices.
Early hosts used nickel-cadmium (NiCd) batteries. However, those batteries were subject to memory effects and toxicity of the cadmium components. Nickel-metal-hydride (NiMH) batteries do not suffer from a memory effect, and are more environmentally benign, but also suffer from shortcomings, including high self-discharge rates and limited service life.
Several problems are common to both battery types. First, battery life is dependent on appropriate charge-discharge profiles. In the extreme, an excessive rate of charge or discharge can result in battery leakage or explosion, posing a risk to the battery-powered device and to the public. Second, without some form of authentication, the battery can be easily cloned, allowing substandard battery designs to be used, and risking the original equipment manufacturer's revenue stream from lost battery sales.
The development of “smart” battery technology provides a partial solution to these deficiencies. Batteries using this technology include circuitry to communicate state-of-charge or state-of-health information to the user, charger or host device. For example, the battery may illuminate a number of LEDs to indicate the state-of-charge, or provide this information via a digitized data stream to the host device.
Two protocols for the host-battery interface are known: the single wire bus and the “SMBus.” The single wire bus is comparatively rudimentary, and is used to communicate the battery code and basic operating parameters. The SMBus, by comparison, is more sophisticated, and is intended to move the charge control from the charger to the battery. In this way, a universal charger can be used to charge batteries with different chemistries. The SMBus system stores more detailed information about the battery, including battery ID number and type, serial number and date of manufacture.
Smart battery technology provides a means to authenticate the battery to the charger or battery-powered device. Identification of the battery to the charger allows for the use of a generic charger that uses different charging algorithms for different battery chemistries. For example, this feature allows for the use of a discharge cycle that would be appropriate for NiCd batteries but not for NiMH batteries, and vice versa. Authentication also provides a means for the battery-powered device to accept or reject a particular battery, addressing the concerns previously set forth.
A deficiency of the current authentication schemes, however, is the relative ease with which a clone manufacturer can copy smart battery circuitry. Access to cryptographic keys used for authentication is possible by readily available reverse engineering techniques, such as deprogramming of the memory module of the authentication module. What is needed in the art is a more secure way to provide authentication for battery modules, such that cloning by bulk theft is frustrated and preferably infeasible.